1. Field
Embodiments included herein generally relate to programming a memory device upon a failure in an electronic system. More particularly, embodiments relate to programming debug data to the memory device upon a timer elapsing or “timing out.”
2. Background
In embedded electronic systems, diagnostic information is oftentimes written (e.g., programmed) to a memory device for debug purposes. For example, at periodic intervals, diagnostic information associated with the embedded system is written to a non-volatile memory device so that, upon system failure, the diagnostic information can be used for debug purposes. In writing the diagnostic information to the memory device, system resources (e.g., memory data bus and address/control bus) are used for the diagnostic write operation.
There are at least two drawbacks with the above diagnostic/debug process. First, since the diagnostic information is written to the memory device repeatedly, this introduces wear on the memory device. This wear on the memory device is unnecessary if a system failure does not occur. Second, since system resources are consumed during the diagnostic write operation to the memory device, this may affect performance of the embedded system during normal operation.